def funA(fn):
    print('A')
    fn()
    return 'fkit'


@funA
def funB():
    print('B')


# 1
# 2
print(funB)


def foo(fn):
    def bar(*args):
        print('==1==', args)
        n = args[0]
        print(fn.__name__)
        fn(n * (n - 1))
        print("*" * 15)
        return fn(n * (n - 1))
    return bar
@foo
def my_test(a):
    print('===my_test===',a)
print(my_test)
my_test(10,1)
